#define _CRT_SECURE_NO_WARNINGS 1

#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>


typedef int DoubleListDateType;

typedef struct DoubleList
{
	struct DoubleList* prev;
	struct DoubleList* next;
	DoubleListDateType date;
}DoubleListNode;

DoubleListNode* BuyDoubleListNode(DoubleListDateType x);
DoubleListNode* DoubleListInit();
void DoubleListPushBack(DoubleListNode* phead, DoubleListDateType x);
void DoubleListPrint(DoubleListNode* phead);
void DoubleListPushFront(DoubleListNode* phead, DoubleListDateType x);
void DoubleListPopFront(DoubleListNode* phead);
void DoubleListPopBack(DoubleListNode* phead);
void DoubleListInsert(DoubleListNode* pos, DoubleListDateType x);
void DoubleListErase(DoubleListNode* pos);